home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 June: Reference Library / Dev.CD Jun 96 RL / Dev.CD Jun 96 RL.toast / Technical Documentation / develop / develop Issue 24 / develop Issue 24 code / Scriptable Database 1.0a15 / Foundation / ProxyToken.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-19  |  2.6 KB  |  74 lines  |  [TEXT/CWIE]

  1. /*
  2.     File:        ProxyToken.h
  3.  
  4.     Contains:    Proxies (base class for things such as the selection)
  5.  
  6.     Written by:    Greg Anderson
  7.  
  8.     Copyright:    © 1993-1995 by Apple Computer, Inc., all rights reserved.
  9.  
  10.          <5>     6/23/95    ga        
  11. */
  12.  
  13.  
  14. #ifndef __PROXYTOKEN__
  15. #define __PROXYTOKEN__
  16. #define ProxyToken_h
  17.  
  18. //
  19. // AbstractDesignator.h is needed because
  20. // TAbstractDesignator is the base class of TProxyToken
  21. //
  22. #include "AbstractDesignator.h"
  23.  
  24. //
  25. // AbstractProperty.h is needed because
  26. // TGenericProperty is the base class of TPropertyOfProxy
  27. //
  28. #include "AbstractProperty.h"
  29.  
  30. #define cProxy        'prxy'
  31.  
  32. class TProxyToken : public TAbstractDesignator
  33.     {
  34. public:
  35.     DeclareSmallClassData(TProxyToken, TAbstractDesignator);
  36.  
  37.                                         TProxyToken();
  38.     virtual                                ~TProxyToken();
  39.     
  40.     void                                IProxyToken(TAbstractScriptableObject* objectOfDesignation = nil);
  41.  
  42.     virtual Boolean                        DerivedFromOSLClass(const TAETransaction& t, DescType objectClass);
  43.     virtual DescType                    DefaultType(const TAETransaction& t, DescType propertyName);
  44.     virtual DescType                    BestType(const TAETransaction& t, DescType propertyName);
  45.  
  46.     virtual Boolean                        Exists(const TAETransaction&);
  47.     virtual TAbstractObjectIterator*    DirectObjectIterator(const TAETransaction&);
  48.  
  49.     virtual Boolean                        PropertyAppliesToProxy(DescType propertyName);
  50.     virtual TAbstractScriptableObject*    AccessByOrdinal(const TAETransaction& t, DescType desiredClass, DescType ordinal);
  51.     virtual TAbstractScriptableObject*    AccessByProperty(const TAETransaction& t, DescType prop);
  52.  
  53.     // Event Handlers:
  54.  
  55. //    virtual TDescriptor                    GetData(DescType requestedType);
  56. //    virtual void                        SetData(TDescriptor keyData);
  57.  
  58.     virtual TDescriptor                    GetProperty(const TAETransaction& t, DescType propertyName, DescType desiredType, unsigned long additionalInfo = 0);
  59.     virtual void                        SetProperty(const TAETransaction& t, DescType propertyName, TDescriptor& data, unsigned long additionalInfo = 0);
  60.  
  61.     virtual TDescriptor                    BuildObjectSpecifier(const TAETransaction&);
  62.     virtual Boolean                        CanReturnDataOfType(const TAETransaction& t, DescType propertyName, DescType desiredType);
  63.  
  64.     TPropertyDescription                LookupPropertyDesciption(const TAETransaction& t, DescType propertyIdentifier);
  65.  
  66.     virtual TDescriptor                    AECommandDispatch(const TAETransaction& t, long aeCommandID, long auxInfo = 0);
  67.     virtual TDescriptor                    AECommand(const TAETransaction& t, long aeCommandID, TAbstractScriptableObject* auxObjects = nil, long auxInfo = 0);
  68.     virtual TAbstractScriptableObject*    CreateNewElement(const TAETransaction& t, DescType newObjectClass, TDescriptor initialData, TDescriptor initialProperties, Boolean& usedInitialData, Boolean& usedInitialProperties);
  69.  
  70. protected:
  71.     };
  72.  
  73. #endif
  74.